<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@ page contentType="text/html;charset=windows-1252"%>
<%@ page import="java.io.File,java.io.FileInputStream,java.io.FileOutputStream,javax.servlet.*,javax.servlet.http.*,java.nio.channels.FileChannel,java.io.IOException" %>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"/>
    <title>updateFiles</title>
  </head>
  <body>
  
  <%!
      public void copia(File nombreFuente, File nombreDestino)
            throws IOException {
          FileInputStream fis = new FileInputStream(nombreFuente);
          FileOutputStream fos = new FileOutputStream(nombreDestino);
          FileChannel canalFuente = fis.getChannel();
          FileChannel canalDestino = fos.getChannel();
          canalFuente.transferTo(0, canalFuente.size(), canalDestino);
          fis.close();
          fos.close();
      }
  %> 
  <%
        boolean update = false;
        String dirFederico = "/var/www/federico/data/";
       // String dirFederico = "D:\\TMP5\\versionfede19012014\\odondata\\";
        String dirApp = request.getSession().getServletContext().getRealPath("/");
        
        
        // Check index.html y custom.css
        File ficheroFede = new File(dirFederico + "index.jsp");     
        File ficheroServer = new File(dirApp + "index.jsp" );
        if (ficheroFede.length() != ficheroServer.length()){
            copia(ficheroFede,  ficheroServer);        
            out.println("UPDATE index.jsp" + "<br>");
            update = true;
        }
        
        ficheroFede = new File(dirFederico + "custom.css");     
        ficheroServer = new File(dirApp + "custom.css" );
        if (ficheroFede.length() != ficheroServer.length()){
            copia(ficheroFede,  ficheroServer);
            out.println("UPDATE custom.css" + "<br>");
            update = true;
        }
                
        
        // Chequea el Html de las paginas
        File path = new File( dirFederico + "pages" + File.separator );
        File[] list = path.listFiles();
        //out.print(list );
        File element;       
        for(int i = 0; i < list.length; i++)
        {
          element = list[i];   
          if (element != null && element.getAbsolutePath().indexOf(".svn") != -1)
              continue;
          ficheroServer = new File( dirApp + "pages" + File.separator + element.getName() );
          
          //if (fileServer.isDirectory())
            //continue;
          
          if (ficheroServer.exists()){ // Si ya existe el html chequea si se modifico
              ficheroFede =  new File( dirFederico + "pages" + File.separator + element.getName());
              if (ficheroFede.exists() && ficheroFede.length() != ficheroServer.length()){
                  // Entonces copia
                  copia(ficheroFede,  ficheroServer);
                  out.println("UPDATE " + element.getName() + "<br>");
                  update = true;
              }
          }                         
        }                            
        
        // Chequea las imagenes
        path = new File( dirFederico + "img" + File.separator );
        list = path.listFiles();
        element = null;
        for(int i = 0; i < list.length; i++)
        {
          element = list[i];   
          if (element != null && element.getAbsolutePath().indexOf(".svn") != -1
              || element != null && element.getAbsolutePath().indexOf("ajax-loaders") != -1
              || element != null && element.getAbsolutePath().indexOf("iphone-style-checkboxes") != -1
              || element != null && element.getAbsolutePath().indexOf("social-icons") != -1
              || element != null && element.getAbsolutePath().indexOf("sos-img") != -1
              )
            continue;
          //out.println(dirApp + "img" + File.separator + element.getName() + "<br>");         
          ficheroServer = new File( dirApp + "img" + File.separator + element.getName() );
          ficheroFede =  new File( dirFederico + "img" + File.separator + element.getName() );
          if (ficheroServer.exists()){ // Si ya existe la imagien chequea si se modifico             
              if (ficheroFede.exists() && ficheroFede.length() != ficheroServer.length()){
                  // Entonces copia
                  
                  out.println(ficheroFede.length() + " - " + ficheroServer.length()+ "<br>");
                  copia(ficheroFede,  ficheroServer);
                  out.println("UPDATE " + element.getName() + "<br>");
                  update = true;
              }
          }else{ // Si no existe la imagen, la copia
               copia(ficheroFede,  ficheroServer);
               out.println("CREATE " + element.getName() + "<br>");         
               update = true;
          }                         
        }
        
        
        if (!update)
            out.println("Los archivos ya se encuentran sincronizados");
  
  %>
  
  
  </body>
</html>